package ui

import (
	"github.com/lxn/walk"

	"github.com/koho/frpmgr/pkg/config"
)

// quickAddBinder is the view model of quick-add dialog
type quickAddBinder struct {
	RemotePort   int
	LocalAddr    string
	LocalPort    int
	LocalPortMin int
	LocalPortMax int
	Dir          string
	Plugin       string
}

// QuickAdd is the interface that must be implemented to build a quick-add dialog
type QuickAdd interface {
	// Run a new simple dialog to input few parameters
	Run(owner walk.Form) (int, error)
	// GetProxies returns the proxies generated by quick-add dialog
	GetProxies() []*config.Proxy
}
